package com.sh.rbac.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sh.rbac.domain.dto.user.UserQueryDTO;
import com.sh.rbac.domain.entity.User;

import java.util.List;

/**
 * @author wb
 * @since 2025-10-13
 */
public interface OnlineUserService {

    /**
     * 分页查询在线用户列表
     *
     * @param current      页码
     * @param limit        每页数量
     * @param userQueryDTO 查询参数
     * @return 在线用户分页列表
     */
    Page<User> getPage(Long current, Long limit, UserQueryDTO userQueryDTO);

    /**
     * 获取所有在线用户
     *
     * @return 在线用户列表
     */
    List<User> getAll();

    /**
     * 强退在线用户
     *
     * @param token 用户token
     * @return 是否强退成功
     */
    Boolean quitUser(String token);
}
